const app = getApp();

var sourceType = [
    ['camera'],
    ['album'],
    ['camera', 'album']
]

Page({
    data: {
        subject: 1,
        imageList: [],
        sourcetype: 1,

        current: 0,
        // parentwidth: 0, 
        // parentheight: 0,  
        // imagewidth: 0, //缩放后的宽 
        // imageheight: 0, //缩放后的高
    },
    onLoad: function() {
    },
    // parentLoad: function(e) {
    //     console.log(e)
    //     this.setData({
    //         parentwidth: e.detail.width,
    //         parentheight: e.detail.height
    //     })
    // },
    // imageLoad: function(e) {
    //     console.log(e);
    //     var w = e.detail.width;
    //     var h = e.detail.height;
    //     var r = w/h;
    //     if(w>this.data.parentwidth) {
    //         w = this.data.parentwidth;
    //         h = w/r;
    //     } else if (h>this.data.parentheight){
    //         h = this.data.parentheight;
    //         w = h*r;
    //     }
    //     this.setData({
    //         imagewidth: w,
    //         imageheight: h,
    //     })
    // },
    selectSubject: function(e) {
        this.setData({
            subject: e.currentTarget.dataset.value,
        });
        // console.log(this.data.subject)
    },
    chooseImage: function(e) {
        var that = this;
        var sourcetype = e ? e.currentTarget.dataset.sourcetype : 0;
        wx.chooseImage({
            sourceType: sourceType[sourcetype],
            sizeType: ['original'],
            success: function(res) {
                // console.log(res)
                that.setData({
                    imageList: res.tempFilePaths,
                    sourcetype: sourcetype,
                })
            }
        })
    },
    previewImage: function(e) {
        var current = e.currentTarget.dataset.src
        wx.previewImage({
            current: current,
            urls: this.data.imageList
        })
    },
    upload_cancel: function() {
        this.setData({
            imageList: [],
        });
    },
    re_camera: function() {
        this.setData({
            imageList: [],
        });
        this.chooseImage();
    },
    uploadImage: function(auto_upload) {
        var self = this;
        if(app.status.isLoading && !auto_upload){
            console.log('不能重复提交');
            return;
        }
        var current = self.data.current;
        var size = self.data.imageList.length;
        if(current == 0)
            app.showLoading(1);
        var imageSrc = self.data.imageList[current];
        if(!imageSrc) {
            return false;
            console.log('图片路径不存在');
        }
        // console.log(size)
        // console.log(current)
        // console.log(imageSrc)
        // console.log(app.globalData.uploadFileUrl)
        // console.log(app.globalData.openId);
        // console.log(self.data.subject);
        wx.uploadFile({
            url: app.api.uploadFileUrl+'?openId='+app.globalData.openId+'&subjectId='+self.data.subject+'&title=',
            filePath: imageSrc,
            name: 'data',
            // formData: {
            //     'openId': app.globalData.openId,
            //     'title': '',
            //     'subjectId': self.data.subject,
            // },
            success: function(res) {
                // wx.showModal({
                //     title: '上传结果',
                //     content: '上传结果' + JSON.stringify(res),
                // })
                // console.log(res);
                if (res.statusCode == '200') {
                    // console.log('图片上传成功');
                    if(JSON.parse(res.data).status=='0') {
                        if (self.data.current < (size-1)) {
                            console.log('图片'+current+'上传成功');
                            self.setData({
                                current: current+1,
                            });
                            self.uploadImage(1);
                        } else{                            
                            console.log('图片'+current+'上传成功');
                            self.setData({
                                current: 0,
                            });
                            wx.showToast({
                                title: '试题上传成功',
                                icon: 'success',
                                duration: 2000,
                                success: function(res) {
                                    self.setData({
                                        imageList: [],
                                    });
                                }
                            }); 
                        }
                    } else {
                        wx.showToast({
                            title: '试题上传失败',
                            icon: 'error',
                            duration: 2000
                        });
                    }
                } else {
                    wx.showToast({
                        title: '图片上传失败',
                        icon: 'error',
                        duration: 2000
                    });
                }
                if(self.data.current == (size-1))
                    app.hideLoading(1, 2000);
            },
            fail: function(errMsg) {
                wx.showModal({
                    title: '图片上传接口请求失败',
                    content: 'errMsg:' + JSON.stringify(errMsg),
                    complete: function(){
                        app.hideLoading(1);
                    }
                })
            }
        })
    }
})

// Page({
//     data: {
//         subject: '',
//     },
//     onLoad: function(options) {
//         this.setData({
//             subject: options.subject
//         })
//         // if (wx.createCameraContext) {
//         //     wx.createCameraContext()
//         // } else {
//         //     // 如果希望用户在最新版本的客户端上体验您的小程序，可以这样子提示
//         //     wx.showModal({
//         //         title: '提示',
//         //         content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
//         //     })
//         // }
//     },
//     // onReady: function(e) {
//     //     this.camera = wx.createCameraContext();
//     // },
//     // getCamera: function() {
//     //     this.camera.takePhoto({
//     //         quality: 'high',
//     //         success: function() {

//     //         },
//     //         fail: function() {

//     //         },
//     //         complete: function() {

//     //         }
//     //     });
//     // }
// })